package music

//单曲
type Single struct {
	NeedLogin bool `json:"needLogin"`
	SingleResult SingleResult `json:"result"`
	Code int `json:"code"`
}
type Ar struct {
	ID int `json:"id"`
	Name string `json:"name"`
	Tns []interface{} `json:"tns"`
	Alias []interface{} `json:"alias"`
}
type Al struct {
	ID int `json:"id"`
	Name string `json:"name"`
	PicURL string `json:"picUrl"`
	Tns []interface{} `json:"tns"`
	PicStr string `json:"pic_str"`
	Pic int64 `json:"pic"`
}
type H struct {
	Br int `json:"br"`
	Fid int `json:"fid"`
	Size int `json:"size"`
	Vd int `json:"vd"`
}
type M struct {
	Br int `json:"br"`
	Fid int `json:"fid"`
	Size int `json:"size"`
	Vd int `json:"vd"`
}
type L struct {
	Br int `json:"br"`
	Fid int `json:"fid"`
	Size int `json:"size"`
	Vd int `json:"vd"`
}
type FreeTrialPrivilege struct {
	ResConsumable bool `json:"resConsumable"`
	UserConsumable bool `json:"userConsumable"`
}
type ChargeInfoList struct {
	Rate int `json:"rate"`
	ChargeURL interface{} `json:"chargeUrl"`
	ChargeMessage interface{} `json:"chargeMessage"`
	ChargeType int `json:"chargeType"`
}
type Privilege struct {
	ID int `json:"id"`
	Fee int `json:"fee"`
	Payed int `json:"payed"`
	St int `json:"st"`
	Pl int `json:"pl"`
	Dl int `json:"dl"`
	Sp int `json:"sp"`
	Cp int `json:"cp"`
	Subp int `json:"subp"`
	Cs bool `json:"cs"`
	Maxbr int `json:"maxbr"`
	Fl int `json:"fl"`
	Toast bool `json:"toast"`
	Flag int `json:"flag"`
	PreSell bool `json:"preSell"`
	PlayMaxbr int `json:"playMaxbr"`
	DownloadMaxbr int `json:"downloadMaxbr"`
	Rscl interface{} `json:"rscl"`
	FreeTrialPrivilege FreeTrialPrivilege `json:"freeTrialPrivilege"`
	ChargeInfoList []ChargeInfoList `json:"chargeInfoList"`
}
//type Al struct {
//	ID int `json:"id"`
//	Name string `json:"name"`
//	PicURL string `json:"picUrl"`
//	Tns []interface{} `json:"tns"`
//	Pic int64 `json:"pic"`
//}
type Songs struct {
	Name string `json:"name"`
	ID int `json:"id"`
	Pst int `json:"pst"`
	T int `json:"t"`
	Ar []Ar `json:"ar"`
	Alia []interface{} `json:"alia"`
	Pop int `json:"pop"`
	St int `json:"st"`
	Rt interface{} `json:"rt"`
	Fee int `json:"fee"`
	V int `json:"v"`
	Crbt interface{} `json:"crbt"`
	Cf string `json:"cf"`
	Al Al `json:"al,omitempty"`
	Dt int `json:"dt"`
	H H `json:"h"`
	M M `json:"m"`
	L L `json:"l"`
	A interface{} `json:"a"`
	Cd string `json:"cd"`
	No int `json:"no"`
	RtURL interface{} `json:"rtUrl"`
	Ftype int `json:"ftype"`
	RtUrls []interface{} `json:"rtUrls"`
	DjID int `json:"djId"`
	Copyright int `json:"copyright"`
	SID int `json:"s_id"`
	Mark int `json:"mark"`
	OriginCoverType int `json:"originCoverType"`
	OriginSongSimpleData interface{} `json:"originSongSimpleData"`
	ResourceState bool `json:"resourceState"`
	Version int `json:"version"`
	Single int `json:"single"`
	NoCopyrightRcmd interface{} `json:"noCopyrightRcmd"`
	Rtype int `json:"rtype"`
	Rurl interface{} `json:"rurl"`
	Mst int `json:"mst"`
	Cp int `json:"cp"`
	Mv int `json:"mv"`
	PublishTime int64 `json:"publishTime"`
	Privilege Privilege `json:"privilege"`
}
type SingleResult struct {
	Songs []Songs `json:"songs"`
	SongCount int `json:"songCount"`
}


